package ar.edu.utn.frba.dds.opendesigners;
/**
 * Clase que queda sin uso. Se deja por si más adelante hay que copiar objetos
 */
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

public class CopiarObjeto{
	/**
	 * Realiza la copia mediante el uso de Serialización/Deserialización 
	 */
	public Object copiar(Object aCopiar) {
		Object copia = null;
		try{
		//Serializo aCopiar en arraySalida
		ByteArrayOutputStream arraySalida = new ByteArrayOutputStream();
		ObjectOutputStream salida = new ObjectOutputStream(arraySalida);
		salida.writeObject(aCopiar);
		salida.flush();
		salida.close();
		
		ObjectInputStream entrada = new ObjectInputStream(new ByteArrayInputStream(arraySalida.toByteArray()));
		copia = entrada.readObject();
		}catch (IOException e) {
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		return copia;
	}
}
